<?php

require("./config.php");

if (!isset($_POST['req'])) {
    die("No request provided.");
} else {
    if (filter_input(INPUT_POST, 'req') == "consContacto") {
        $json = array("success" => false, "Elements" => Array());

        $user = $dbConn->real_escape_string(filter_input(INPUT_POST, 'cedCont'));

        $query = "SELECT NOMBRE_CONTACTO, APELLIDO_CONTACTO, TELEFONO_UNO_CONTACTO, TELEFONO_DOS_CONTACTO, CORREO_CONTACTO, DEPARTAMENTO_CONTACTO "
                . "FROM CONTACTO WHERE PK_CONTACTO_ID_CONTACTO='" . $user . "';";
        $result = $dbConn->query($query);

        if ($info = mysqli_fetch_array($result, MYSQL_ASSOC)) {
            array_push($json['Elements'], $info);
            $json['success'] = true;
        }

        print(json_encode($json));
    } else if (filter_input(INPUT_POST, 'req') == "consProfesor") {
        $json = array("success" => false, "Elements" => Array());

        $user = $dbConn->real_escape_string(filter_input(INPUT_POST, 'cedCont'));

        $query = "SELECT NOMBRE_PROFESOR, TELEFONO_CELULAR_PROFESOR, TELEFONO_CASA_PROFESOR, TELEFONO_OFICINA_PROFESOR, "
                . "CORREO1_PROFESOR, CORREO2_PROFESOR "
                . "FROM PROFESOR WHERE PK_PROFESOR_ID_PROFESOR='" . $user . "';";
        $result = $dbConn->query($query);

        if ($info = mysqli_fetch_array($result, MYSQL_ASSOC)) {
            array_push($json['Elements'], $info);
            $json['success'] = true;
        }

        print(json_encode($json));
    } else if (filter_input(INPUT_POST, 'req') == "changePass") {
        $user = $dbConn->real_escape_string(filter_input(INPUT_POST, 'cedCont'));
        $pw = $dbConn->real_escape_string(filter_input(INPUT_POST, 'pw'));
        $newpw = $dbConn->real_escape_string(filter_input(INPUT_POST, 'newpw'));

        $json = array("success" => false, "msg" => "");

        $query = "SELECT CLAVE_USUARIO FROM USUARIO WHERE PK_USUARIO_ID_USUARIO = '" . $user . "';";
        $result = $dbConn->query($query);

        $info = $result->fetch_row();

        if (crypt($pw, $info[0]) == $info[0]) {

            $hashed_pass = better_crypt($newpw);

            $queryC = "UPDATE USUARIO SET CLAVE_USUARIO='" . $hashed_pass . "' WHERE PK_USUARIO_ID_USUARIO='" . $user . "';";
            $resultC = $dbConn->query($queryC);

            $json['success'] = true;
            $json['msg'] = "Su contraseña ha sido cambiada correctamente";
        } else {
            $json['msg'] = "Contraseña invalida, inténtelo de nuevo por favor";
        }

        print(json_encode($json));
    } else if (filter_input(INPUT_POST, 'req') == "changeDato") {
        $user = $dbConn->real_escape_string(filter_input(INPUT_POST, 'user'));
        $input = $dbConn->real_escape_string(filter_input(INPUT_POST, 'input'));
        $action = $dbConn->real_escape_string(filter_input(INPUT_POST, 'action'));

        $json = array("success" => false);

        switch ($action) {
            case "nombreContacto":
                $query = "UPDATE CONTACTO SET NOMBRE_CONTACTO='" . $input . "' WHERE PK_CONTACTO_ID_CONTACTO='" . $user . "';";
                break;
            case "apellidoContacto":
                $query = "UPDATE CONTACTO SET APELLIDO_CONTACTO='" . $input . "' WHERE PK_CONTACTO_ID_CONTACTO='" . $user . "';";
                break;
            case "departamentoContacto":
                $query = "UPDATE CONTACTO SET DEPARTAMENTO_CONTACTO='" . $input . "' WHERE PK_CONTACTO_ID_CONTACTO='" . $user . "';";
                break;
            case "telefonoContacto":
                $query = "UPDATE CONTACTO SET TELEFONO_UNO_CONTACTO='" . $input . "' WHERE PK_CONTACTO_ID_CONTACTO='" . $user . "';";
                break;
            case "telefono2Contacto":
                $query = "UPDATE CONTACTO SET TELEFONO_DOS_CONTACTO='" . $input . "' WHERE PK_CONTACTO_ID_CONTACTO='" . $user . "';";
                break;
            case "emailContacto":
                $query = "UPDATE CONTACTO SET CORREO_CONTACTO='" . $input . "' WHERE PK_CONTACTO_ID_CONTACTO='" . $user . "';";
                break;

            case "nombreProfesor":
                $query = "UPDATE PROFESOR SET NOMBRE_PROFESOR='" . $input . "' WHERE PK_PROFESOR_ID_PROFESOR='" . $user . "';";
                break;
            case "telefonoProfesor":
                $query = "UPDATE PROFESOR SET TELEFONO_CELULAR_PROFESOR='" . $input . "' WHERE PK_PROFESOR_ID_PROFESOR='" . $user . "';";
                break;
            case "telefono2Profesor":
                $query = "UPDATE PROFESOR SET TELEFONO_CASA_PROFESOR='" . $input . "' WHERE PK_PROFESOR_ID_PROFESOR='" . $user . "';";
                break;
            case "telefono3Profesor":
                $query = "UPDATE PROFESOR SET TELEFONO_OFICINA_PROFESOR='" . $input . "' WHERE PK_PROFESOR_ID_PROFESOR='" . $user . "';";
                break;
            case "emailProfesor":
                $query = "UPDATE PROFESOR SET CORREO1_PROFESOR='" . $input . "' WHERE PK_PROFESOR_ID_PROFESOR='" . $user . "';";
                break;
            case "email2Profesor":
                $query = "UPDATE PROFESOR SET CORREO2_PROFESOR='" . $input . "' WHERE PK_PROFESOR_ID_PROFESOR='" . $user . "';";
                break;
        }

        $result = $dbConn->query($query);

        if ($result != null) {
            $json['success'] = true;
        }

        print(json_encode($json));
    }
}

